// 基于state的getter计算属性的对象 购物车的计算

export default {
  totalCount (state) {
    return state.cartFoods.reduce((preTotal, food) => preTotal + food.count, 0)
  }, // reduce数组的reduce方法，接收一个函数（必须）和指定的初始值（非必须）作为参数，函数有三个参数，分别为初始值，当前项，当前数组，进行累加或者累积操作，初始值为每次累加或者累计后的结果注意：在ie9一下的浏览器中，并不支持该方法 ！语法：arr.reduce(fn(pre,cur,arr){},[initialValue])

  totalPrice (state) {
    return state.cartFoods.reduce((preTotal, food) => preTotal + food.count * food.price, 0)
  }, // 初始值+新得到的值==等于最后结果 累加的过程 0 reduce方法的初始值

  positiveSize (state) {
    return state.ratings.reduce((preTotal, rating) => preTotal + (rating.rateType===0?1:0) , 0)
  }
}
